package br.unicamp.ic.inf312.arena.modelo.logistico;
/*
 * ArenaTicketMain - Venda de Bilhetes Eletronicos para Espetaculos (Arena Entretenimento S.A.)
 * AgendaArtistica.java
 * ©2006
 */

import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;

import br.unicamp.ic.inf312.framework.modelo.ModeloBase;

/**
 * Agenda artistica elaborada para um determinado periodo e unidade de negocio.
 * 
 * @author inf312
 */
public class AgendaArtistica extends ModeloBase {
	private int codAgenda;
	private Date dataInicio;
	private Date dataTermino;
	public Collection<Evento> eventos;
	public UnidadeNegocio unidadeNegocio;

	//--
	public AgendaArtistica() {}

	/**
	 * 
	 * @param dataInicio
	 * @param dataTermino
	 * @param unidadeNegocio
	 */
	public AgendaArtistica(Date dataInicio, Date dataTermino,
			UnidadeNegocio unidadeNegocio) {
		super();
		this.dataInicio = dataInicio;
		this.dataTermino = dataTermino;
		this.unidadeNegocio = unidadeNegocio;
		this.eventos = new ArrayList<Evento>();
	}

	/**
	 * 
	 * @param dataInicio
	 * @param dataTermino
	 * @param unidadeNegocio
	 * @param eventos
	 */
	public AgendaArtistica(Date dataInicio, Date dataTermino,
			UnidadeNegocio unidadeNegocio, Collection<Evento> eventos) {
		super();
		this.dataInicio = dataInicio;
		this.dataTermino = dataTermino;
		this.unidadeNegocio = unidadeNegocio;
		this.eventos = eventos;
	}

	public Collection<Evento> getEventos() {
		return this.eventos;
	}

	public void setEventos(Collection<Evento> eventos) {
		this.eventos = eventos;
	}

	/**
	 * Adiciona novo Evento para Agenda Artistica
	 * @param evento
	 * void
	 */
	public void addNovoEvento(Evento evento) {
		this.eventos.add(evento);
	}

	public Date getDataInicio() {
		return dataInicio;
	}

	public void setDataInicio(Date dataInicio) {
		this.dataInicio = dataInicio;
	}

	public Date getDataTermino() {
		return dataTermino;
	}

	public void setDataTermino(Date dataTermino) {
		this.dataTermino = dataTermino;
	}

	public UnidadeNegocio getUnidadeNegocio() {
		return unidadeNegocio;
	}

	public void setUnidadeNegocio(UnidadeNegocio unidadeNegocio) {
		this.unidadeNegocio = unidadeNegocio;
	}

	public int getCodAgenda() {
		return codAgenda;
	}

	public void setCodAgenda(int codAgenda) {
		this.codAgenda = codAgenda;
	}
}